package com.interview.javabasic.IO;

import java.io.*;

//继承自父类Writer
//OutputStreamWriter：是字符流通向字节流的桥梁：可使用指定的charset将要写入六中的字符编码成自己。（编码：把能看懂的编程看不懂的）
/*继承自父类共性成员方法：
-void writer(int char)写入单个字符
-void writer(char[] cbuf)写入字符数组
-absract void writer(char[] xbuf,int off,int len)写入字符数组的一部分，oof是数组的开始索引，len写的是字符的个数
-void writer(String str)写入字符串
 -void flush()刷新该流的缓冲
 -void close()关闭该流，但要先刷新它
 构造方法：
 OutputStreamWriter
*/
public class OutputStreamWriterDemo {
    public static void main(String[] args) throws IOException {
        write_utf_8();
    }

    private static void write_utf_8() throws IOException {
        //1.创建OutputStreamWriter对象，构造方法中传递字节输出流和指定的编码表名称
        OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("utf_8.txt"),"utf-8");
        //2.使用OutputStreamWriter对象中的方法writer,把字符转换为字节存储缓冲区中（编码）
        osw.write("你好");
        //3.使用OutputStreamWriter对象中的flush方法，把内存缓冲区中的字节刷新到文件中（使用字节流写字节的过程）
        osw.flush();
        //4.释放资源
        osw.close();
    }
}
